
package com.zhike.common.dto;

/**
 * <p>
 * 为了简化系统逻辑，本对象是EVA.EPC框架发送给服务端的唯一对像类型，所以要发送
 * 给服务器的对象都必须是此类（及其子类）的实例.<br>
 * 
 * <p>
 * 本类扩展 {@link DataFromClient} 类的作用，仅是为了实现跟Web浏览器端通过JSONP进行数据格式传递。
 * 
 * <p>
 * 关于整个MVC框架捕获和处理客户端请求的流程，请参见：{@link com.eva.framework.HttpController}.
 * 
 * @author Jack Jiang
 * @since 4.5
 */
public class DataFromClient4Web extends DataFromClient
{
	private static final long serialVersionUID = 1L;
	
	/** 数据返回格式：JSON格式，主要用于APP端调用时 */
	public final static String RET_FORMAT_JSON = "json";
	/** 数据返回格式：JSON格式，主要用于Web端调用时实现跨域读取数据 */
	public final static String RET_FORMAT_JSONP = "jsonp";
	
	/** 数据返回格式 */
	protected String format = RET_FORMAT_JSON;
	
	/**
	 *  本参数只在retFormat= {@link #RET_FORMAT_JSONP} 时有意义，表示jsonp对应的客户端JS回调函数.
	 *  补充：为了兼容jQuery的跨域回调，参数名就定为jsoncallback了
	 */
	protected String jsoncallback = null;
	
	public String getFormat()
	{
		return format;
	}

	public DataFromClient4Web setFormat(String retFormat)
	{
		this.format = retFormat;
		return this;
	}

	public String getJsoncallback()
	{
		return jsoncallback;
	}

	public DataFromClient4Web setJsoncallback(String retCallBack)
	{
		this.jsoncallback = retCallBack;
		return this;
	}
	
	
	/** 一个方便的短方法名的新建本实例的类方法 */
	public static DataFromClient4Web n()
	{
		return new DataFromClient4Web();
	}
}
